/**
 * <p>版权所有：中企动力
 * <p>未经本公司许可，不得以任何方式复制或使用本程序任何部分
 */
package com.ce.pms.common.web;
/**
 *
 * 功能描述: ICacheManage 用于描述将保存到服务器中的会话缓存中的页面数据VO对象所应遵从的规范。<br>
 *
 * 		<p>缓存用于页面交互过于复杂时使用，在使用<b>webx</b>框架下处理页面内容与业务层次之间的数据暂存，
 * 作为一种中间过程，它应该在Action层被使用。</p>
 * 		<p>所有应该存储到缓存中的VO对象都应实现此接口，以保证其操作的正确性。</p>
 * 		<p>每一个实现本接口的缓存对象都应有两种属性：<i>状态属性</i> 和 <i>持久属性</i>。</p>
 * 		<p><i>状态属性</i>：
 * <ul>
 * <li><b>ADD</b>：新增</li>
 * <li><b>EDIT</b>：修改</li>
 * <li><b>DELETE</b>：删除</li>
 * <li><b>DONE</b>：已保存</li>
 * </ul>
 * 	<i>持久属性</i>：是否已经持久化到数据库中。
 * <ul>
 * <li><b>SAVED</b>：保存过</li>
 * <li><b>UNSAVE</b>：未保存过</li>
 * </ul>
 * </p>
 * 	<p>此接口继承了<i>Comparable</i>接口，每一个本接口的实现都应该使用自身业务逻辑实现 compareTo方法。</p>
 *
 *
 * @author  付湘辉
 * Created on：  2008-6-3
 */
public interface ICacheManage<T extends ICacheManage> extends Comparable<T>{
	/**
	 * 新增状态
	 */
	public static final String ADD = "cache_add";

	/**
	 * 修改状态
	 */
	public static final String EDIT = "cache_edit";

	/**
	 * 删除状态
	 */
	public static final String DELETE = "cache_delete";

	/**
	 * 已保存状态
	 */
	public static final String DONE = "cache_done";

	/**
	 * 已保存过
	 */
	public static final String SAVED = "cache_saved";

	/**
	 * 未保存过
	 */
	public static final String UNSAVE = "cache_unsave";

	/**
	 * 功能描述: 获取是否保存的状态标志
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @return 返回结果
	 */
	public String getHasSave();

	/**
	 * 功能描述: 设置是否保存的状态标志
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @param hasSave the 是否保存的状态标志 to set
	 */
	public void setHasSave(String hasSave);

	/**
	 * 功能描述: 获取操作状态
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @return 返回结果
	 */
	public String getOpratorStatus();

	/**
	 * 功能描述: 设置操作状态
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @param opratorStatus the 操作状态 to set
	 */
	public void setOpratorStatus(String opratorStatus);

	/**
	 * 功能描述: 获取缓存中的索引位置
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @return 返回结果
	 */
	public Integer getIndex();

	/**
	 * 功能描述: 设置缓存中的索引位置
	 *
	 * @author 付湘辉
	 * Created on:2008-6-6
	 *
	 * 修改原因：
	 * @param index the 缓存中的索引位置 to set
	 */
	public void setIndex(Integer index);
}
